﻿namespace WMS6.Services
{
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.ServiceModel;
    using WMS6.Common;
    using WMS6.DataEntity;
    using WMS6.QueryEntity;

    [ServiceContract(Namespace="WMS6.Services")]
    public interface IBaseInfoService
    {
        [OperationContract, FaultContract(typeof(FaultDetail))]
        string Delete(List<string> IDS, string className, PubParasInfo pubParasInfo);
        [FaultContract(typeof(FaultDetail)), OperationContract]
        DataSet GetAllInfo(string className, PubParasInfo pubParasInfo);
        [ServiceKnownType(typeof(UserVendorInfo)), ServiceKnownType(typeof(DomainInfo)), ServiceKnownType(typeof(UserMstInfo)), ServiceKnownType(typeof(SysCodeInfo)), ServiceKnownType(typeof(LocationInfo)), ServiceKnownType(typeof(PutawayRuleInfo)), ServiceKnownType(typeof(RotationRuleInfo)), ServiceKnownType(typeof(PreallocateRuleInfo)), ServiceKnownType(typeof(AllocateRuleInfo)), ServiceKnownType(typeof(TaskRuleInfo)), ServiceKnownType(typeof(FilterConfigHeaderInfo)), ServiceKnownType(typeof(SysSettingInfo)), ServiceKnownType(typeof(DbConfigInfo)), ServiceKnownType(typeof(CycleCountClassInfo)), ServiceKnownType(typeof(CustomerInfo)), ServiceKnownType(typeof(VendorInfo)), ServiceKnownType(typeof(CarrierInfo)), ServiceKnownType(typeof(BillingEntityInfo)), ServiceKnownType(typeof(CycleCountRuleInfo)), ServiceKnownType(typeof(DriverInfo)), ServiceKnownType(typeof(EquipmentTypeInfo)), ServiceKnownType(typeof(TransportEquipmentInfo)), ServiceKnownType(typeof(LocSiteInfo)), ServiceKnownType(typeof(LocAddrInfo)), ServiceKnownType(typeof(ContractInfo)), ServiceKnownType(typeof(SubjectInfo)), ServiceKnownType(typeof(RateInfo)), ServiceKnownType(typeof(GeneralLedgerInfo)), ServiceKnownType(typeof(TariffInfo)), ServiceKnownType(typeof(BillingServiceInfo)), ServiceKnownType(typeof(AccessorialInfo)), ServiceKnownType(typeof(CalendarGroupInfo)), ServiceKnownType(typeof(EquipmentProfileInfo)), ServiceKnownType(typeof(ReceiptValidationInfo)), ServiceKnownType(typeof(UdfReportSettingInfo)), ServiceKnownType(typeof(EmailSettingInfo)), ServiceKnownType(typeof(UserBillingentityInfo)), ServiceKnownType(typeof(UserCarrierInfo)), ServiceKnownType(typeof(LotTemplateInfo)), ServiceKnownType(typeof(UserPermissionsInfo)), ServiceKnownType(typeof(PackInfo)), ServiceKnownType(typeof(UserCustomerInfo)), ServiceKnownType(typeof(LocationTemplateInfo)), OperationContract, FaultContract(typeof(FaultDetail)), ServiceKnownType(typeof(UomInfo)), ServiceKnownType(typeof(CartonInfo)), ServiceKnownType(typeof(ZoneInfo)), ServiceKnownType(typeof(TradePartnerInfo)), ServiceKnownType(typeof(RoleInfo)), ServiceKnownType(typeof(AreaInfo))]
        object GetInfoByID(string id, string className, PubParasInfo pubParasInfo);
        [ServiceKnownType(typeof(PackQueryEntity)), ServiceKnownType(typeof(RoleQueryEntity)), ServiceKnownType(typeof(EmailSettingQueryEntity)), FaultContract(typeof(FaultDetail)), ServiceKnownType(typeof(UomQueryEntity)), ServiceKnownType(typeof(CartonQueryEntity)), ServiceKnownType(typeof(ZoneQueryEntity)), ServiceKnownType(typeof(TradePartnerQueryEntity)), ServiceKnownType(typeof(AreaQueryEntity)), ServiceKnownType(typeof(UserMstQueryEntity)), ServiceKnownType(typeof(LotTemplateQueryEntity)), OperationContract, ServiceKnownType(typeof(LocationTemplateQueryEntity)), ServiceKnownType(typeof(DomainQueryEntity)), ServiceKnownType(typeof(SysCodeQueryEntity)), ServiceKnownType(typeof(LocationQueryEntity)), ServiceKnownType(typeof(PutawayRuleQueryEntity)), ServiceKnownType(typeof(RotationRuleQueryEntity)), ServiceKnownType(typeof(PreallocateRuleQueryEntity)), ServiceKnownType(typeof(AllocateRuleQueryEntity)), ServiceKnownType(typeof(TaskRuleQueryEntity)), ServiceKnownType(typeof(FilterConfigHeaderQueryEntity)), ServiceKnownType(typeof(SysSettingQueryEntity)), ServiceKnownType(typeof(DbConfigQueryEntity)), ServiceKnownType(typeof(CycleCountClassQueryEntity)), ServiceKnownType(typeof(CustomerQueryEntity)), ServiceKnownType(typeof(VendorQueryEntity)), ServiceKnownType(typeof(CarrierQueryEntity)), ServiceKnownType(typeof(BillingEntityQueryEntity)), ServiceKnownType(typeof(CycleCountRuleQueryEntity)), ServiceKnownType(typeof(AuditDataQueryEntity)), ServiceKnownType(typeof(DriverQueryEntity)), ServiceKnownType(typeof(EquipmentTypeQueryEntity)), ServiceKnownType(typeof(TransportEquipmentQueryEntity)), ServiceKnownType(typeof(LocAddrQueryEntity)), ServiceKnownType(typeof(LocSiteQueryEntity)), ServiceKnownType(typeof(ContractQueryEntity)), ServiceKnownType(typeof(SubjectQueryEntity)), ServiceKnownType(typeof(RateQueryEntity)), ServiceKnownType(typeof(GeneralLedgerQueryEntity)), ServiceKnownType(typeof(TariffQueryEntity)), ServiceKnownType(typeof(BillingServiceQueryEntity)), ServiceKnownType(typeof(AccessorialQueryEntity)), ServiceKnownType(typeof(CalendarGroupQueryEntity)), ServiceKnownType(typeof(EquipmentProfileQueryEntity)), ServiceKnownType(typeof(ReceiptValidationQueryEntity)), ServiceKnownType(typeof(UdfReportSettingQueryEntity))]
        DataSet GetInfoByQueryEntity(object obj, string className, PubParasInfo pubParasInfo);
        [ServiceKnownType(typeof(LocAddrInfo)), ServiceKnownType(typeof(LotTemplateInfo)), ServiceKnownType(typeof(PackInfo)), ServiceKnownType(typeof(LocationTemplateInfo)), ServiceKnownType(typeof(DomainInfo)), ServiceKnownType(typeof(SysCodeInfo)), ServiceKnownType(typeof(LocationInfo)), ServiceKnownType(typeof(PutawayRuleInfo)), ServiceKnownType(typeof(RotationRuleInfo)), ServiceKnownType(typeof(PreallocateRuleInfo)), ServiceKnownType(typeof(AllocateRuleInfo)), ServiceKnownType(typeof(TaskRuleInfo)), ServiceKnownType(typeof(FilterConfigHeaderInfo)), ServiceKnownType(typeof(SysSettingInfo)), ServiceKnownType(typeof(DbConfigInfo)), ServiceKnownType(typeof(CycleCountClassInfo)), ServiceKnownType(typeof(CustomerInfo)), ServiceKnownType(typeof(VendorInfo)), ServiceKnownType(typeof(CarrierInfo)), ServiceKnownType(typeof(BillingEntityInfo)), ServiceKnownType(typeof(CycleCountRuleInfo)), ServiceKnownType(typeof(DriverInfo)), ServiceKnownType(typeof(EquipmentTypeInfo)), ServiceKnownType(typeof(TransportEquipmentInfo)), ServiceKnownType(typeof(LocSiteInfo)), OperationContract, ServiceKnownType(typeof(ContractInfo)), ServiceKnownType(typeof(SubjectInfo)), ServiceKnownType(typeof(RateInfo)), ServiceKnownType(typeof(GeneralLedgerInfo)), ServiceKnownType(typeof(TariffInfo)), ServiceKnownType(typeof(BillingServiceInfo)), ServiceKnownType(typeof(AccessorialInfo)), ServiceKnownType(typeof(CalendarGroupInfo)), ServiceKnownType(typeof(EquipmentProfileInfo)), ServiceKnownType(typeof(ReceiptValidationInfo)), ServiceKnownType(typeof(UserBillingentityInfo)), ServiceKnownType(typeof(UserCarrierInfo)), ServiceKnownType(typeof(UserCustomerInfo)), ServiceKnownType(typeof(UserVendorInfo)), ServiceKnownType(typeof(UdfReportSettingInfo)), ServiceKnownType(typeof(EmailSettingInfo)), FaultContract(typeof(FaultDetail)), ServiceKnownType(typeof(UomInfo)), ServiceKnownType(typeof(CartonInfo)), ServiceKnownType(typeof(ZoneInfo)), ServiceKnownType(typeof(TradePartnerInfo)), ServiceKnownType(typeof(RoleInfo)), ServiceKnownType(typeof(AreaInfo)), ServiceKnownType(typeof(UserMstInfo))]
        string Insert(object obj, string className, PubParasInfo pubParasInfo);
        [ServiceKnownType(typeof(AccessorialInfo)), FaultContract(typeof(FaultDetail)), ServiceKnownType(typeof(UomInfo)), ServiceKnownType(typeof(CartonInfo)), ServiceKnownType(typeof(ZoneInfo)), ServiceKnownType(typeof(TradePartnerInfo)), ServiceKnownType(typeof(RoleInfo)), ServiceKnownType(typeof(AreaInfo)), ServiceKnownType(typeof(UserMstInfo)), ServiceKnownType(typeof(LotTemplateInfo)), ServiceKnownType(typeof(PackInfo)), ServiceKnownType(typeof(LocationTemplateInfo)), ServiceKnownType(typeof(UserPermissionsInfo)), ServiceKnownType(typeof(DomainInfo)), ServiceKnownType(typeof(SysCodeInfo)), ServiceKnownType(typeof(LocationInfo)), ServiceKnownType(typeof(PutawayRuleInfo)), ServiceKnownType(typeof(RotationRuleInfo)), ServiceKnownType(typeof(PreallocateRuleInfo)), ServiceKnownType(typeof(AllocateRuleInfo)), ServiceKnownType(typeof(TaskRuleInfo)), ServiceKnownType(typeof(FilterConfigHeaderInfo)), ServiceKnownType(typeof(SysSettingInfo)), ServiceKnownType(typeof(DbConfigInfo)), ServiceKnownType(typeof(CycleCountClassInfo)), ServiceKnownType(typeof(CustomerInfo)), ServiceKnownType(typeof(VendorInfo)), ServiceKnownType(typeof(CarrierInfo)), ServiceKnownType(typeof(BillingEntityInfo)), ServiceKnownType(typeof(CycleCountRuleInfo)), ServiceKnownType(typeof(DriverInfo)), ServiceKnownType(typeof(EquipmentTypeInfo)), ServiceKnownType(typeof(TransportEquipmentInfo)), ServiceKnownType(typeof(LocSiteInfo)), ServiceKnownType(typeof(LocAddrInfo)), ServiceKnownType(typeof(ContractInfo)), ServiceKnownType(typeof(SubjectInfo)), ServiceKnownType(typeof(RateInfo)), ServiceKnownType(typeof(GeneralLedgerInfo)), ServiceKnownType(typeof(TariffInfo)), ServiceKnownType(typeof(BillingServiceInfo)), OperationContract, ServiceKnownType(typeof(CalendarGroupInfo)), ServiceKnownType(typeof(EquipmentProfileInfo)), ServiceKnownType(typeof(ReceiptValidationInfo)), ServiceKnownType(typeof(UserBillingentityInfo)), ServiceKnownType(typeof(UserCarrierInfo)), ServiceKnownType(typeof(UserCustomerInfo)), ServiceKnownType(typeof(UserVendorInfo)), ServiceKnownType(typeof(UdfReportSettingInfo)), ServiceKnownType(typeof(EmailSettingInfo))]
        string Update(object obj, string className, PubParasInfo pubParasInfo);
    }
}

